package abg.core.domain.db;

import abg.core.common.mybatis.config.FieldInsert;
import abg.core.common.mybatis.config.FieldSet;
import abg.core.common.mybatis.config.FieldUpdate;
import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Table;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;

/**
 * 会议内用户权限
 */
@Data
@Table(value = "mt_room_user_auth", onUpdate = FieldUpdate.class, onInsert = FieldInsert.class, onSet = FieldSet.class)
public class MtRoomUserAuth implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    //        用户ID
    private String userId;

    //        会议ID
    private String mtId;

    //是否为房主；0=普通用户；1=房主；默认为0
    private String isCompere;

    //开麦资格；0=无资格；1=有资格；默认为0
    private String authTop;

    //进入会议资格；0=正常；1=已被踢出会议；默认为0；
    private String isOut;

    //发言资格；0=无资格；1=有资格；默认为1
    private String authMsg;

    //当前开麦状态；0未开麦；1=已开麦；
    private String audioStatus;

    //申请上麦状态；0=未申请；1=已申请；
    private String applyTopStatus;

    //是否正在会议内；0=不在会议内；1=正在会议中；默认为0
    private String isInRoom;

    //        推流地址
    private String rtmpPushUrl;

    //        拉流地址
    private String rtmpPullUrl;

    //        会议内昵称
    private String mtNickName;

    //        会议内头像
    private String mtNickAvatar;

    @Column(ignore = true)
    private String phone;

}
